Skip to content

APIが出しうる例外を pdf-lib 独自のエラークラスに統一#12

Merged
terurou merged 17 commits intodenkiyagi-forkfrom
improvement/error-types
Nov 27, 2025
Merged

APIが出しうる例外を pdf-lib 独自のエラークラスに統一#12
terurou merged 17 commits intodenkiyagi-forkfrom
improvement/error-types

Conversation

@falworks-dy
Copy link
Copy Markdown

@falworks-dy falworks-dy commented Nov 27, 2025

変更概要

  • 基底エラークラスの導入
    • 新規モジュール src/core/error-base.ts にて PDFLibError クラスを追加
    • 既存のエラークラスを含め、全てのエラーの基底クラスとして使用
  • 生のエラーの置き換え
    • src/api/, src/core/, src/utils/ それぞれの各種モジュールにて、生の Error/TypeError を投げていた箇所を独自のエラークラスに置き換え
    • エラークラスはそれぞれ src/api/errors.ts, src/core/errors.ts, src/utils/errors.ts で定義
  • 外部ライブラリーの例外の捕捉
    • @denkiyagi/fontkit が出す例外を catch して pdf-lib のエラークラスに変換するように
      • 該当箇所: PDFDocument クラスの embedFont 系のメソッド、および PDFFont クラスの一部メソッド
    • @pdf-lib/upng が出す例外を catch して pdf-lib のエラークラスに変換するように
      • 該当箇所: src/utils/png.ts

テスト

PDFDocument.spec.ts にて:

  • 既存のテストケースにエラークラスの変更を反映
  • 不正なフォントやPNGを埋め込んだ際に意図したエラーが出ることを確認するための最低限の新規テストケースを追加

その他

package.json 等のバージョンを 1.17.1-mod.2025.8 に更新

@falworks-dy falworks-dy requested a review from terurou November 27, 2025 07:35
@falworks-dy falworks-dy changed the title v1.17.1-mod.2025.8 : APIが出しうる例外を pdf-lib 独自のエラークラスに統一 APIが出しうる例外を pdf-lib 独自のエラークラスに統一 Nov 27, 2025
@terurou terurou merged commit 4f24c70 into denkiyagi-fork Nov 27, 2025
4 checks passed
@terurou terurou deleted the improvement/error-types branch November 27, 2025 08:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants